include_rules = [
  # Restricting uses of Chrome*Activity in favor of direct dependency aquisition. Code that doesn't
  # live under chrome/android/java/src/.../chrome/browser has a seperate exception in
  # chrome/android/DEPS. Exceptions can be found under "specific_include_rules"below. See
  # chrome/android/DEPS for more information.
  "-chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  "-chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java",
  "-chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity2.java",
  "+chrome/browser/contextmenu/java/src/org/chromium/chrome/browser/contextmenu/ContextMenuPopulatorFactory.java",
  "+chrome/browser/ui/android/theme",
  "+chrome/browser/ui/android/toolbar",
  "+third_party/blink/public/mojom:mojom_platform_java",
]

specific_include_rules = {
  # Exceptions to the ChromeActivity dependency restriction. These will all eventually be removed
  # new code should rely on acceptable dependency aquisition patterns.
  "ChromePowerModeVoter\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "ChromeTabbedActivity\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "LaunchIntentDispatcher\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "ContextualSearchTabHelper\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "BaseCustomTabActivity\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "DisplayCutoutTabHelper\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "DownloadInfoBarController\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "ScreenshotTask\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "ProcessInitializationHandler\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "OfflineIndicatorController\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "UpdateInfoBarController\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "UpdateStatusProvider\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "FakeAppUpdateManagerWrapper\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "AutocompleteMediator\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "AndroidPaymentApp\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "ChromePaymentRequestService\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "InterceptNavigationDelegateClientImpl\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "TabImpl\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "TrustedCdn\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "ChromeTabCreator\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "TabDelegate\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "ReturnToChromeExperimentsUtil\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "ViewShiftingActionBarDelegate\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],
  "ArCompositorDelegateImpl\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/app/ChromeActivity.java",
  ],

  # Exceptions to the Chrome*Activity dependency restriction. These will all eventually be removed
  # new code should rely on acceptable dependency aquisition patterns.
  "VideoPlayerActivity\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "BookmarkUtils\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "ContextualSearchQuickActionControl\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "DownloadInfoBarController\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "DownloadUtils\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "HistoryContentManager\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "IncognitoNotificationServiceImpl\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "StartupTabPreloader\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "MultiInstanceChromeTabbedActivity\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "MultiInstanceManager\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "MultiInstanceManagerApi31\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "MultiWindowUtils\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "MultiWindowUtilsApi31\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "OfflinePageDownloadBridge\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "TabModelImpl\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
  "TabDelegate\.java": [
    "+chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedActivity.java"
  ],
}
